Skip to content

feat(orchestration): opt-in bounded recovery search (#1020)#1108

Merged
shaun0927 merged 1 commit into
feat/1018-recovery-candidate-rankingfrom
feat/1020-bounded-recovery-search
May 13, 2026
Merged

feat(orchestration): opt-in bounded recovery search (#1020)#1108
shaun0927 merged 1 commit into
feat/1018-recovery-candidate-rankingfrom
feat/1020-bounded-recovery-search

Conversation

@shaun0927
Copy link
Copy Markdown
Owner

@shaun0927 shaun0927 commented May 12, 2026

Progress / Review status

Auto-refreshed 2026-05-13 — owner comments cleaned up to reduce review noise.

Field Value
Branch feat/1020-bounded-recovery-searchfeat/1018-recovery-candidate-ranking
Draft no
CI
Mergeable ✅ MERGEABLE
Review decision
Codex (latest)
Other reviewers (latest)
Head 5cc0227 — Recover failed plans with opt-in safe candidates
Commits 1

Owner comment cleanup: 0 issue + 0 inline review comments deleted. Outstanding feedback from automated/external reviewers above is unchanged.


Summary\n- Adds opt-in bounded recovery for compiled plan execution.\n- Executes only read-only candidate tools under strict candidate/tool-call/time budgets.\n- Returns structured recovery attempts in execute_plan results.\n\nCloses #1020.\n\nStacked on #1088 because it consumes ranked recovery candidates.\n\n## Validation\n- npm test -- --runTestsByPath tests/orchestration/plan-executor-bounded-recovery.test.ts\n- npm run build\n\n## Live OpenChrome verification\n- Not run in this PR session; requires execute_plan transcript against the stale-ref fixture added in #1073.\n\n## Safety\n- Disabled unless execute_plan receives boundedRecovery: true.\n- Only read_only candidates are executed; side-effect candidates are recorded as blocked.\n- Small default budgets: maxCandidates=3, maxToolCalls=2, perCandidateTimeoutMs=5000.

Add bounded read-only recovery attempts for compiled plans so safe state-refresh candidates can repair stale or blocked steps under explicit opt-in budgets.\n\nConstraint: Live browser recovery must be opt-in, budgeted, and limited to read-only candidates.\nRejected: General MCTS/live browser branching | unsafe for authenticated sessions and unnecessary for the current harness goal.\nConfidence: medium\nScope-risk: moderate\nDirective: Do not widen candidate execution beyond read-only tools without an explicit destructive-action gate and live verification.\nTested: npm test -- --runTestsByPath tests/orchestration/plan-executor-bounded-recovery.test.ts; npm run build\nNot-tested: Full execute_plan MCP transcript against Chrome fixture.
@qodo-code-review
Copy link
Copy Markdown

Qodo reviews are paused for this user.

Troubleshooting steps vary by plan Learn more →

On a Teams plan?
Reviews resume once this user has a paid seat and their Git account is linked in Qodo.
Link Git account →

Using GitHub Enterprise Server, GitLab Self-Managed, or Bitbucket Data Center?
These require an Enterprise plan - Contact us
Contact us →

@chatgpt-codex-connector
Copy link
Copy Markdown

Codex usage limits have been reached for code reviews. Please check with the admins of this repo to increase the limits by adding credits.
Repo admins can enable using credits for code reviews in their settings.

@gemini-code-assist
Copy link
Copy Markdown

Warning

You have reached your daily quota limit. Please wait up to 24 hours and I will start processing your requests again!

@shaun0927
Copy link
Copy Markdown
Owner Author

Merge rationale (stack consolidation)

Intent. Closes #1020 — adds an opt-in bounded recovery mode for compiled plan execution that consults the ranked recovery candidates added by #1088.

Why this is correct.

  • Bounded by all the right things: candidate count, tool-call count, and wall-clock budget.
  • Executes only read-only candidate tools during recovery, so a recovery attempt cannot mutate page state on its own.
  • Returns structured recovery attempts in execute_plan results — observable, not opaque.
  • Opt-in: no behavior change for callers who don't enable bounded recovery.
  • Validation: tests/orchestration/plan-executor-bounded-recovery.test.ts + npm run build per the PR body.
  • Scope contained: 4 files, +293/-70. No Codex P0/P1/P2 outstanding.

CI. Targets the recovery-candidate-ranking feature branch; CI workflow only runs on main/develop PRs.

@shaun0927 shaun0927 merged commit 775c9ee into feat/1018-recovery-candidate-ranking May 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant